////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
//
//		File Name		:		IBaseInterface.h
//
//		Author			:		Kevin Jordan
//
//		Purpose			:		A Interface class that will ensure all the child classes have neccessary functionality
//
//		Dates			:		Written( Feb 12, 2011 ) by Kevin Jordan		LastUpdate( Feb 12, 2011  ) by Kevin Jordan 
//	
/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
#ifndef IBASEINTERFACE_H_
#define IBASEINTERFACE_H_

#include <windows.h>


class IBaseInterface
{
public:
	virtual ~IBaseInterface() = 0 {}

	virtual void Update(float fElapsedTime) = 0;
	virtual void Render() = 0;

	virtual void AddRef() = 0;
	virtual void Release() = 0;
	virtual bool CheckCollision(IBaseInterface* pBase)=0;
	
	virtual int GetType() = 0;
	virtual RECT GetRect() = 0;
	virtual bool Input() =0;

	virtual float GetPosX()= 0;
	virtual float GetPosY() =0;





};
#endif